1. Field of the Invention
The present invention relates to a data distribution apparatus that distributes data, such as video data or audio data, and a data communications system provided with the data distribution apparatus and a data receiving apparatus that receives data distributed thereto from the data distribution apparatus.
2. Description of Related Art
Nonpatent reference 1 discloses, as related art, a system that distributes real-time data represented by video data or audio data onto an IP (Internet Protocol) network. Although a distribution-side apparatus packetizes such data into packets and then transmits them onto the IP network, it is not guaranteed that the packets are certainly distributed to destinations and that the receiving apparatus can receive the packets sequentially in the sequence in which they are distributed from the distribution-side apparatus.
The TCP (Transport Control Protocol) protocol is usually used when such a guarantee is required. However, when the TCP protocol is used, since packet losses are recovered by resending, the TCP protocol is not suitable for applications which require real-time nature. Although the UDP (User Datagram Protocol) is used for applications which require real-time nature, the UDP guarantees neither reliable distribution of packets, nor distribution of packets in orderly sequence, like the IP.
In the case of transmission of real-time data such as video data or audio data, since real-time nature is thought as important and the expenditure of time to resend packets is not allowed, resending of packets is not carried out even if packet losses occur. However, when using transmitted packets, receive-side apparatus need to rearrange them in the sequence in which the packets are distributed by the distributing-side apparatus.
Although packet losses are disregarded in the RTP (Realtime Transport Protocol) disclosed by nonpatent reference 1, each of packets to be distributed contains a 16-bit sequence number showing the how-manieth packet it is in the header thereof to enable the receive-side apparatus to easily rearrange the packets in the sequence in which they are distributed. Each of the packets further contains a time stamp showing time information in the header thereof to make it possible for the distribution-side apparatus and the receive-side apparatus to establish time synchronization between them.
Nonpatent reference 2 discloses, as related art, a means for encrypting the payload of an RTP packet except the header of the RTP packet. This means generates an encryption key stream in the counter mode of AES (Advanced Encryption Standard) using an encryption key and information including a sequence number contained in the RTP header, and encrypts the payload by implementing the logical exclusive OR operation on the encryption key stream and the payload.    [Nonpatent reference 1] IETF Standard RFC 1889 RTP: A Transport Protocol for Real-Time Applications January 1996    [Nonpatent reference 2] IETF Standard RFC 3711 The Secure Real-time Transport Protocol (SRTP) March 2004
Although block cipher is used for the encryption of an RTP packet disclosed by above-mentioned nonpatent reference 2, it is actually used as stream cipher which generates the encryption key stream. The stream cipher has a problem of low levels of security. For example, when an identical encryption key stream is used for the encryption of RTP packets, the encrypted RTP packets can be easily cracked.
A further problem is that since the counter mode is a comparatively new encryption mode, existing encryption hardware may not support the counter mode and general-purpose encryption hardware cannot be used for the counter-mode encryption of RTP packets.